package com.share.common.logback;

import ch.qos.logback.core.PropertyDefinerBase;
import com.share.common.utils.IpUtil;
import lombok.extern.slf4j.Slf4j;

/**
 * 作者  孙艳强
 * 用法 ：在logback中定义如下语句
 * <define name="IP" class="com.share.common.logback.IpProperty"/>
 * <p>
 * 使用  ${IP}  获取变量的值  ----------- 切记是 ${IP}
 * <p>
 * 新版本springboot无法使用sl4j输出日志(老版本可以),因此这里只能使用System.out.println(msg);
 */
@Slf4j
public class IpProperty extends PropertyDefinerBase {
    /**
     * 这个方法只会在初始化的时候执行一次，放在logback的上下文中
     *
     * @return ip 地址
     */
    @Override
    public String getPropertyValue() {
        return IpUtil.getIp();
    }

    public static String getIp() {
        return IpUtil.getIp();
    }
}
